8 Puzzle problem using breadth first search